Digital Media and MultiMedia Scheduling and Delivery Platform

ABSTRACT

The system is a self-serve platform, which delivers user uploaded media and multimedia files, of varying playback duration, to a client computer connected to a digital display; which is set to receive executions for a scheduled playlist and punctually presents the playback of media and/or multimedia files in said playlist record. The system&#39;s included functions for schedule generation, schedule selection, and playlist creation contain unique, and embedded automatic functions-making the scheduling and delivery of media and multimedia files reliable, accessible, and cost efficient.

RELATED U.S. APPLICATION DATA

This application claims the benefit of U.S. Provisional Application No. 62/472,049, filed on Mar. 16, 2017. U.S. Provisional Application No. 62/472,049 is hereby incorporated by reference in its entirety.

BACKGROUND 1. Field of Invention

The disclosure generally relates to the field of media and multimedia presentation and distribution systems, and more specifically, to creating a system with autonomous components to schedule and present media and multimedia of varying duration.

2. Description of Related Art

Out-of-home advertising, OOH, incorporates a variety of different means to present advertisements and create brand recognition; specifically, as relating to the art, in the form of static images, digital presentation of static images with set durations or exposure times, and more sophisticated digital presentation of video media. The widespread practice of using posters and billboards for advertising has slowly evolved to incorporate the use of more dynamic digital systems, these systems may feature engaging visual effects via digital signage such as digital posters, digital billboards, and even small digital displays.

While digital signage is more engaging and certain companies do offer viable means for private individuals and businesses to advertise digitally, these companies share common disadvantages that are unfortunately passed along to the advertiser. Many of these companies require time consuming and out-of-date practices, including: require person to person dialogue and correspondence to figure out scheduling, require expensive investments such as large digital billboards which limits overall scalability reach, place large restrictions on the file types accepted, enforce unfair bidding systems that limit accessibility to many due to the very expensive and obscure rates, and lack automation and novelty that can lower rates and improve accessibility.

In general, the current state of the art lacks sophisticated automation processes that would improve accessibility, lacks a structure that can provide transparent scheduling with pricing, lacks a signage system that accept submittal of various media and multimedia file types of varying duration, and lacks a sustainable growth model due to the large capital investments required on for business that rely on digital billboards.

BRIEF SUMMARY OF THE INVENTION

To address the disadvantages of current digital signage systems involved with digital advertisement placements, the system offers an accessible internet platform that allows users to simply create an account, upload their media or multimedia file(s) (advertisement(s) or announcement(s),) and individually schedule said file or files for playback on a digital display or selection of digital displays, available in client network. With this type of system, various file formats are accepted, and due to the encoding process will allow users to upload image and video files alike, and schedule them to same schedule for presentation on the same digital display-if so desired. The system does not incorporate a bidding system, and due to the automated nature, will have low running costs to operate—passing along the savings to the advertisers. Scalability costs will also be low for the system, due to majority of the digital displays available in the client network are planned to be small displays for mainly indoor with some outdoor use.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1A depicts a partial view of one embodiment of the system in which two out of three main modules, CLIENT REGISTRATION and CREATE ACCOUNT, are illustrated.

FIG. 1B depicts the accompanying partial view of the same embodiment of the system in which the third main module, LOG IN, is illustrated.

DETAILED DESCRIPTION

The system includes a CLIENT REGISTRATION module 2, that allows a windows-based client computer, connected to an external digital display or a series of digital displays (that produced a scaled display,) to establish connection to the server. The system creates a unique registration ID number illustrated in submodule ASSIGN REGISTRATION ID 3, for the respective client computer and stores this unique identifier in a database. The operator of the respective client computer is prompted to download the client application 4 through the website. Upon installation of the client application, the application runs 5, and the client computer's registration ID is verified to establish initial connection with the server. Upon successful registration, the server delivers pre-prepared filler files 6 (media and multimedia content) to a designated storage in the client computer. This enables the client computer to commence display of respective filler files, pending playlist orders from scheduled media and multimedia from respective user or users.

The system further includes a CREATE ACCOUNT module 7, that allows any user to create an account, which enables the user to upload and schedule their respective media and or multimedia for playback on registered client digital displays. After submission of pertinent user account information 8, such as email address, business name, business address, and phone number, the user's account is activated, and the user is prompted to either upload their media and/or multimedia file(s), to continue the session, or they can choose to upload at a later time 9. If the user decides to upload their media and/or multimedia file(s) at a later time, the user can end the session 10. If the user chooses to upload their media and/or multimedia file(s) 11, the user is prompted to select between uploading an image or a video 12.

If the user selects to upload an image file 13, the user is prompted to assign a desired playback duration for said file. The system encodes the image file into a video file, in MP4 format with the H.264 codec, that has attributed playback duration that the user assigned in previous step. The duration info, along with other pertinent data of the encoded file is written to a record in a designated data file on the server. The respective video file is stored in a separate storage on the server.

An additional process involved with the ENCODE submodule 14 is an edit process that truncates approximately 0.08 seconds, that equates to the transition time that is imposed by media player between playback of scheduled files. This process is necessary for maintaining scheduled start times in a punctual manner and maintains schedule integrity of respective playlists executed by the client application.

The system then moves the encoded file to a data file intended for access by the screening process 15, wherein the encoded files are accessed for manual screening through a server application. Screening is based on a video file content's subject matter, any resulting technical issues during encoding, and accurate metadata; and is approved or denied based on internal protocols. Each encoded file is assigned a pass or fail classification 16. The user is then notified of respective status by email and/or SMS 17 and 18, respectively. A pass classification allows the user to proceed to schedule the respective media or multimedia file. A fail classification denotes an end to the cycle for that respective file. The file is then stored 19 in a specific data file in the server's data repository, which contains copies of all screened files regardless of respective status.

FIG. 1B depicts the third main module involving the LOG IN procedure 20. It also includes submodules 11-19, which are the same one found in FIG. 1A and which were described in paragraphs [0009] to [0012]. One of its submodules, SCHEDULE FILE, 21 is further described below.

Upon user selection of their respective media or multimedia file, illustrated in submodule SCHEDULE FILE 21, if said user only has one media or multimedia file attributed to their respective account, system pre-selects 22 said user's media or multimedia file; and is then prompted to select the target digital display, wherein client application assembles. If said user has more than one media and/or multimedia file attributed to their respective account, the system provides a drop-down list of said user's media and/multimedia files available for selection 22.

Said user is then prompted to select the digital display 23 that the user wishes to schedule playback of their selected media or multimedia file. The availability of digital displays is subject to the user's media or multimedia file's conformity to respective display's requirements concerning: orientation and sizing of display's screen, content subject matter, and metadata accuracy.

Upon user's digital display selection, user is prompted to select 24 either a manual process of scheduling or an assisted process of scheduling their respective media or multimedia file. If manual scheduling 25 is selected, the system will prompt the user to select a calendar date, and upon selection of said calendar date, the system will display all hour periods that contain available time slots. Hour periods are predefined t also referred to as schedule items, with respect to user's media or multimedia file's playback duration, meaning each schedule item has temporal length equal to said user's media or multimedia file's playback duration. The system will then display the available schedule items within each selected hour period.

If assisted scheduling 26 is opted for, the user will be prompted to enter a desired frequency for user's media or multimedia file's playback per hour period, per selected date. The system will generate a schedule of all possible schedule items, within applicable hour windows, wherein user's defined frequency criterion is met, per date selected.

The following description entails how the time slots, also referred to as schedule items, are configured and generated by the system. Schedule items hold scheduling positions in generated schedules, with each schedule item's temporal length being equal to each respective user media or multimedia file's duration. When assembled, these schedule items encompass the total available time in the generated schedule list, within a selected hour period, within the selected calendar date. They are generated by algorithmic loops that analyze previously scheduled records of user submitted media and/or multimedia file(s,) per respective calendar date file, per respective hour period file, if they exist. An hour period with no scheduled records is simply analyzed by, diving the hour period by the duration of said media or multimedia file, and creating a whole number of such schedule items that encompass the time beginning from the start of the hour period to the end or as close to the end of hour period. If previously scheduled records exist within the hour period, the system analyzes: if there is a gap between the beginning of the hour playlist and the beginning of first scheduled record, if there is a gap between the first scheduled record and the following scheduled record, and so on, until it analyzes if there is a gap between the end of the last scheduled record and the end of the hour playlist; once these gaps are identified, the system creates a total number of schedule items equal to number of gaps within the hour period that are large enough, temporally, to fit said user media or multimedia file duration.

Upon user submittal and confirmation 27, the server's calendar date, within its respective calendar month file, within its respective calendar year file, with respect to the scheduling data per user media or multimedia, and the corresponding copies of each said calendar type files, located in the storage of the client computer, are updated 29 with said submitted schedule data and the respective media or multimedia file's metadata. If user cancels, the application will terminate the session 28.

Upon submittal and confirmation of schedule data transfer by the user, the system will also deliver a copy of said user's media or multimedia file 30 to respective client computer, if said client computer does not already contain said media or multimedia file in its storage.

Hourly playlists on client computer are assembled 31 every hour on the half hour. Playlists are displayed on respective client computer's digital display every hour on the hour. To assemble playlist, the system routinely scans daily calendar files on an hourly basis and incorporates procedures that assemble records pertinent to next playlist in chronological order. During assembly of the playlist 32, time gaps are identified, which may lie between a multitude of the following positions: between the beginning of the hour playlist and the beginning of the first scheduled record for that hour, between the end of the first scheduled record and the beginning of the next scheduled record, between a number of records in the middle section of the hour, between the end of the second to last scheduled record and the beginning of the last scheduled record, or between the end of the last scheduled record and the end of the hour playlist. With the gaps identified, the playlist assembles, and these gaps are matched with media and/or multimedia files found in a filler folder, which includes many such files of varying durations, and the process attempts to fit as many of the gaps as possible with said files, while attempting to use as many of the filler files as possible, limiting the reoccurrence of the same filler file in the playlist.

BEST MODE OF IMPLEMENTATION

-   -   1. Below are the recommended hardware requirements for the         server:         -   Intel i5 or i7 processor;         -   RAID 1 compatible motherboard;         -   Windows 8 or newer operating system;         -   64 GB of RAM for Windows Server 2016 Essentials;         -   2×500 GB RAID 1 for Operating System;         -   1 TB for data back up     -   2. Below are the recommended hardware requirements for the         client computer and user's computing device:         -   Duo Core or high processor;         -   2 GB of RAM;         -   32-bit or 64-bit Operating System     -   3. Below are incorporated opensource software tools required for         the system to run precisely:         -   1. FFMPEG, an open source code platform, which is integrated             in the system for efficient handling and encoding of media             and multimedia data. Files are encoded to a MP4 format with             the H.264 codec. FFMPEG is licensed under GNU Lesser General             Public License (LGPL.)         -   2. MediaInfo 0.7.62, an open source program, which is             integrated in the system to retrieve necessary metadata of             media and multimedia files. MediaInfo 0.7.62 is licensed             under GNU Lesser General Public License (LGPL.) 

What is claimed is:
 1. A computer implemented method of uploading media and multimedia files of varying playback duration, intended for scheduling of their playback on a digital display available in client network, comprising: a process that allows a computing device of a user to upload an image media file or a selection of image files; stores said image file or files in a data repository; receives user input or inputs for a desired playback duration of said image file or files; constrains said user input or inputs, per image media file, to be between one second and a maximum duration equal to a predefined time period; encodes, by a computer processor, said image file or files into a benchmark multimedia file type with the attributed playback duration or durations user input previously set; stores the new multimedia file or files in a data repository; and a process that allows a computing device of a user to upload a media and/or a multimedia file or a selection of media and/or multimedia files; determines if said media and/or multimedia playback duration is longer than one second and does not have a duration longer than a maximum duration equal to a predefined time period; accepts the media and/or multimedia file or files that meet previously stated duration requirements; stores said accepted media and/or multimedia file or files in a data repository; encodes said accepted media and/or multimedia file or files into a benchmark multimedia file type; and stores the new multimedia file or files in a data repository.
 2. The method of claim 1, wherein a user is a digital account holder, and wherein all user uploaded media or multimedia files and corresponding encoded multimedia files are attributed to said user account, through database management protocols.
 3. A computer implemented method of generating a schedule intended to reserve time slots for user media and multimedia playback on a digital display available in client network, comprising: a process that generates a chronological schedule that is partitioned into selectable schedule items, where each item's temporal length is equal to a user's selected multimedia file's playback duration, in which the sum of generated schedule items encompasses the total time available in a selected predefined time period, wherein the selected predefined time period is one of many predefined time periods within a calendar date selected by said user, for each selected digital display available in client network; and a process that analyzes database records per selected digital display, per selected calendar date, per selected predefined time period, in order to generate a schedule that which, at the time of execution, does not generate schedule items that would conflict temporally with said user's or another user's previously submitted scheduling.
 4. A computer implemented method of selecting schedules for user media and multimedia files, comprising: a process of identifying, by a computer processor, that a user's account holds only one media or only one multimedia file record in the database; automatically selecting said media or multimedia file for scheduling; retrieving input from said user for a target digital display for eventual output of media or multimedia file playback; retrieving input from said user of a selected calendar date, within selected digital display; retrieving input from said user of a selected predefined time period or a selection of predefined time periods, within selected calendar date; enables said user to select an available schedule item or a plurality of available schedule items, wherein their corresponding media or multimedia file is recorded in a database and assigned to this schedule item, per each selected predefined time period, per selected calendar date, per target digital display, per user media or multimedia file; and a process that enables a user to select a media or multimedia file if said user's account holds a plurality of media and/or multimedia files; retrieving input from said user for a target digital display for eventual output of selected media or multimedia file playback; retrieving input from said user of a selected calendar date, within selected digital display; retrieving input from said user of a selected predefined time period or a selection of predefined time periods, within selected calendar date; enables said user to select an available schedule item or a plurality of available schedule items, wherein their corresponding media or multimedia file is recorded in a database and assigned to this schedule item, per each selected predefined time period, per selected calendar date, per target digital display, per selected user media or multimedia file.
 5. The method of claim 4, wherein a plurality of executions of the method is allowed in same session by said user.
 6. A computer implemented method of a playlist creator for scheduled media and multimedia files for a client system, comprising: a process that identifies, by a computer processor, records in a database of scheduled media and/or multimedia pending playback on a digital display available in client network; organizes said pending records in chronological order pertinent to and for the next scheduled playlist; identifies vacant spot within the next scheduled playlist period; fills vacant spots within next scheduled playlist period with filler media and/or multimedia files; and determines when to start playback of next scheduled playlist.
 7. A media and multimedia uploading system for files of varying playback duration, intended for scheduling of their playback on a digital display available in client network, comprising: a computer processor, a routing engine executing on the computer processor and configured to: allow a computing device of a user to upload an image media file or a selection of image files; store said image file or files in a data repository; receive user input or inputs for a desired playback duration of said image file or files; constrain said user input or inputs, per image media file, to be between one second and a maximum duration equal to a predefined time period; encode, by a computer processor, said image file or files into a benchmark multimedia file type with the attributed playback duration or durations user input previously set; store the new multimedia file or files in a data repository; and a process that allows a computing device of a user to upload a media and/or a multimedia file or a selection of media and/or multimedia files; determine if said media and/or multimedia playback duration is longer than one second and does not have a duration longer than a maximum duration equal to a predefined time period; accept the media and/or multimedia file or files that meet previously stated duration requirements; store said accepted media and/or multimedia file or files in a data repository; encode said accepted media and/or multimedia file or files into a benchmark multimedia file type; and store the new multimedia file or files in a data repository.
 8. A media and multimedia schedule generating system, intended to reserve time slots for user media and multimedia playback on a digital display available in client network, comprising: a computer processor, a routing engine executing on the computer processor and configured to: generate a chronological schedule that is partitioned into selectable schedule items, where each item's temporal length is equal to a user's selected multimedia file's playback duration, in which the sum of generated schedule items encompasses the total time available in a selected predefined time period, wherein the selected predefined time period is one of many predefined time periods within a calendar date selected by said user, for each selected digital display available in client network; and a process that analyzes database records per selected digital display, per selected calendar date, per selected predefined time period, in order to generate a schedule that which, at the time of execution, does not generate schedule items that would conflict temporally with said user's or another user's previously submitted scheduling.
 9. A media and multimedia schedule selecting system, comprising: a computer processor, a routing engine executing on the computer processor and configured to: identify, by a computer processor, that a user's account holds only one media or only one multimedia file record in the database; automatically select said media or multimedia file for scheduling; retrieve input from said user for a target digital display for eventual output of media or multimedia file playback; retrieve input from said user of a selected calendar date, within selected digital display; retrieve input from said user of a selected predefined time period or a selection of predefined time periods, within selected calendar date; enable said user to select an available schedule item or a plurality of available schedule items, wherein their corresponding media or multimedia file is recorded in a database and assigned to this schedule item, per each selected predefined time period, per selected calendar date, per target digital display, per user media or multimedia file; and configured to: enable a computing device of a user to select a media or multimedia file, if said user's account holds a plurality of media and/or multimedia files; retrieve input from said user for a target digital display for eventual output of selected media or multimedia file playback; retrieve input from said user of a selected calendar date, within selected digital display; retrieve input from said user of a selected predefined time period or a selection of predefined time periods, within selected calendar date; enable said user to select an available schedule item or a plurality of available schedule items, wherein their corresponding media or multimedia file is recorded in a database and assigned to this schedule item, per each selected predefined time period, per selected calendar date, per target digital display, per selected user media or multimedia file.
 10. A scheduled media and multimedia playlist creation system for a client system, comprising: a computer processor, a routing engine executing on the computer processor and configured to: identify, by a computer processor, records in a database of scheduled media and/or multimedia pending playback on a digital display available in client network; organize said pending records in chronological order pertinent to and for the next scheduled playlist; identify vacant spot within the next scheduled playlist period; fill vacant spots within next scheduled playlist period with filler media and/or multimedia files; and determine when to start playback of next scheduled playlist.
 11. A non-transitory computer readable medium comprising a plurality of instructions for uploading media and multimedia files of varying playback duration, intended for scheduling their playback on a digital display available in client network, the plurality of instructions comprising functionality to: allow a computing device of a user to upload an image media file or a selection of image files; store said image file or files in a data repository; receive user input or inputs for a desired playback duration of said image file or files; constrain said user input or inputs, per image media file, to be between one second and a maximum duration equal to a predefined time period; encode, by a computer processor, said image file or files into a benchmark multimedia file type with the attributed playback duration or durations user input previously set; store the new multimedia file or files in a data repository; and a process that allows a computing device of a user to upload a media and/or a multimedia file or a selection of media and/or multimedia files; determine if said media and/or multimedia playback duration is longer than one second and does not have a duration longer than a maximum duration equal to a predefined time period; accept the media and/or multimedia file or files that meet previously stated duration requirements; store said accepted media and/or multimedia file or files in a data repository; encode said accepted media and/or multimedia file or files into a benchmark multimedia file type; and store the new multimedia file or files in a data repository.
 12. A non-transitory computer readable medium comprising a plurality of instructions for generating a schedule for media and multimedia files, the plurality of instructions comprising functionality to: generate a chronological schedule that is partitioned into selectable schedule items, where each item's temporal length is equal to a user's selected multimedia file's playback duration, in which the sum of generated schedule items encompasses the total time available in a selected predefined time period, wherein the selected predefined time period is one of many predefined time periods within a calendar date selected by said user, for each selected digital display available in client network; and a process that analyzes database records per selected digital display, per selected calendar date, per selected predefined time period, in order to generate a schedule that which, at the time of execution, does not generate schedule items that would conflict temporally with said user's or another user's previously submitted scheduling.
 13. A non-transitory computer readable medium comprising a plurality of instructions for selecting schedules for user media and multimedia files, the plurality of instructions comprising functionality to: a computer processor, a routing engine executing on the computer processor and configured to: identify, by a computer processor, that a user's account holds only one media or only one multimedia file record in the database; automatically select said media or multimedia file for scheduling; retrieve input from said user for a target digital display for eventual output of media or multimedia file playback; retrieve input from said user of a selected calendar date, within selected digital display; retrieve input from said user of a selected predefined time period or a selection of predefined time periods, within selected calendar date; enable said user to select an available schedule item or a plurality of available schedule items, wherein their corresponding media or multimedia file is recorded in a database and assigned to this schedule item, per each selected predefined time period, per selected calendar date, per target digital display, per user media or multimedia file; and configured to: enable a computing device of a user to select a media or multimedia file, if said user's account holds a plurality of media and/or multimedia files; retrieve input from said user for a target digital display for eventual output of selected media or multimedia file playback; retrieve input from said user of a selected calendar date, within selected digital display; retrieve input from said user of a selected predefined time period or a selection of predefined time periods, within selected calendar date; enable said user to select an available schedule item or a plurality of available schedule items, wherein their corresponding media or multimedia file is recorded in a database and assigned to this schedule item, per each selected predefined time period, per selected calendar date, per target digital display, per selected user media or multimedia file.
 14. A non-transitory computer readable medium comprising a plurality of instructions for a playlist creator for scheduled media and multimedia files for a client system, the plurality of instructions comprising functionality to: a computer processor, a routing engine executing on the computer processor and configured to: identify, by a computer processor, records in a database of scheduled media and/or multimedia pending playback on a digital display available in client network; organize said pending records in chronological order pertinent to and for the next scheduled playlist; identify vacant spot within the next scheduled playlist period; fill vacant spots within next scheduled playlist period with filler media and/or multimedia files; and determine when to start playback of next scheduled playlist. 